package com.tql.pandian.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.tql.pandian.entity.TqlPandianCaseEntity;
import com.tql.pandian.entity.dto.*;
import com.tql.pandian.entity.vo.PanDianCaseVo;
import com.tql.pandian.entity.vo.SemiMaterialVo;
import com.tql.pandian.entity.vo.TeamGroupVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

@Mapper
public interface TqlPandianCaseMapper extends BaseMapper<TqlPandianCaseEntity> {

    int insertPandianCase (TqlPandianCaseEntity tqlPandianCaseEntity);

    int batchInsertPandianCase(List<TqlPandianCaseEntity> list);

    List<PanDianCaseVo> selectPanDianCaseMain(PanDianCaseDTO panDianCaseDTO);

    List<Map> selectPanDianPerson(List<Long> deptIds);

    List<Map> selectStageMan(String deptCode);

    List<SemiMaterialVo> getSemiMaterial (MaterialCaseDTO materialCaseDTO);

    List<Map> selectAllAppUser();

    List<TeamGroupVO> selectTeamGroup(String deptCode);

    TeamGroupVO getTeamInfo(String deptCode);

    List<CaseStapAndMaterialTransUnit> getPandianCaseById(Long id);

    List<TqlPandianCaseStapDTO> getStapByCaseId(Long pid);

    CaseStapAndMaterialTransUnit getPandianCaseById1(UpdatePanDianDataData dto);

    CaseStapAndMaterialTransUnit selectStapByStapCode(String stapCode);

    CaseStapAndMaterialTransUnit selectCaseStapByStapCode(UpdatePanDianDataData dto);

    CaseStapAndMaterialTransUnit getPandianData(UpdatePanDianDataData dto);

    CaseStapAndMaterialTransUnit selectStapByStapCode1(String stapCode);

    BigDecimal getPriceByStapCodeAndDeptCode(String stapCode, String deptCode);
}
